package com.restaurant.application.indexes.couponmanagelist.mysql;

import com.google.common.collect.Lists;
import com.nebutown.generation.Convert;
import com.nebutown.generation.PickableBean;
import com.nebutown.generation.basictype.UID;

import java.util.List;

public class CouponManageListCriteria implements PickableBean {

    public static final String FN_RECORDID = "recordId";
    public static final String FN_COUPONMANAGEUIDEQUALS = "couponManageUidEquals";
    public static final String FN_COUPONMANAGEUIDNOTEQUALS = "couponManageUidNotEquals";
    public static final String FN_IDLIKE = "idLike";
    public static final String FN_IDEQUALS = "idEquals";
    public static final String FN_IDNOTEQUALS = "idNotEquals";
    public static final String FN_NUMBERLIKE = "numberLike";
    public static final String FN_NUMBEREQUALS = "numberEquals";
    public static final String FN_NUMBERNOTEQUALS = "numberNotEquals";
    public static final String FN_CREATETIMEUPPER = "createTimeUpper";
    public static final String FN_CREATETIMELOWER = "createTimeLower";
    public static final String FN_CREATETIMEEQUALS = "createTimeEquals";
    public static final String FN_CREATETIMENOTEQUALS = "createTimeNotEquals";
    public static final String FN_MODIFYTIMEUPPER = "modifyTimeUpper";
    public static final String FN_MODIFYTIMELOWER = "modifyTimeLower";
    public static final String FN_MODIFYTIMEEQUALS = "modifyTimeEquals";
    public static final String FN_MODIFYTIMENOTEQUALS = "modifyTimeNotEquals";
    public static final String FN_RECEIVETIMEUPPER = "receiveTimeUpper";
    public static final String FN_RECEIVETIMELOWER = "receiveTimeLower";
    public static final String FN_RECEIVETIMEEQUALS = "receiveTimeEquals";
    public static final String FN_RECEIVETIMENOTEQUALS = "receiveTimeNotEquals";
    public static final String FN_ENDTIMEUPPER = "endTimeUpper";
    public static final String FN_ENDTIMELOWER = "endTimeLower";
    public static final String FN_ENDTIMEEQUALS = "endTimeEquals";
    public static final String FN_ENDTIMENOTEQUALS = "endTimeNotEquals";
    public static final String FN_TYPELIKE = "typeLike";
    public static final String FN_TYPEEQUALS = "typeEquals";
    public static final String FN_TYPENOTEQUALS = "typeNotEquals";
    public static final String FN_MODALITYLIKE = "modalityLike";
    public static final String FN_MODALITYEQUALS = "modalityEquals";
    public static final String FN_MODALITYNOTEQUALS = "modalityNotEquals";
    public static final String FN_FULLMONEYUPPER = "fullMoneyUpper";
    public static final String FN_FULLMONEYLOWER = "fullMoneyLower";
    public static final String FN_MINUSMONEYUPPER = "minusMoneyUpper";
    public static final String FN_MINUSMONEYLOWER = "minusMoneyLower";
    public static final String FN_SHOPUIDLIKE = "shopUidLike";
    public static final String FN_SHOPUIDEQUALS = "shopUidEquals";
    public static final String FN_SHOPUIDNOTEQUALS = "shopUidNotEquals";
    public static final String FN_SHOPNAMELIKE = "shopNameLike";
    public static final String FN_SHOPNAMEEQUALS = "shopNameEquals";
    public static final String FN_SHOPNAMENOTEQUALS = "shopNameNotEquals";
    public static final String FN_REMARKSLIKE = "remarksLike";
    public static final String FN_REMARKSEQUALS = "remarksEquals";
    public static final String FN_REMARKSNOTEQUALS = "remarksNotEquals";
    public static final String FN_TOTALAMOUNTLIKE = "totalAmountLike";
    public static final String FN_TOTALAMOUNTEQUALS = "totalAmountEquals";
    public static final String FN_TOTALAMOUNTNOTEQUALS = "totalAmountNotEquals";
    public static final String FN_AMOUNTLIKE = "amountLike";
    public static final String FN_AMOUNTEQUALS = "amountEquals";
    public static final String FN_AMOUNTNOTEQUALS = "amountNotEquals";
    public static final String FN_STATELIKE = "stateLike";
    public static final String FN_STATEEQUALS = "stateEquals";
    public static final String FN_STATENOTEQUALS = "stateNotEquals";
    public static final String FN_LIMITIDLIKE = "limitIdLike";
    public static final String FN_LIMITIDEQUALS = "limitIdEquals";
    public static final String FN_LIMITIDNOTEQUALS = "limitIdNotEquals";
    public static final String FN_LIMITACCOUNTLIKE = "limitAccountLike";
    public static final String FN_LIMITACCOUNTEQUALS = "limitAccountEquals";
    public static final String FN_LIMITACCOUNTNOTEQUALS = "limitAccountNotEquals";

    public static final List<String> FIELD_NAMES = Lists.newArrayList(
             FN_RECORDID,
             FN_COUPONMANAGEUIDEQUALS,
             FN_COUPONMANAGEUIDNOTEQUALS,
             FN_IDLIKE,
             FN_IDEQUALS,
             FN_IDNOTEQUALS,
            FN_NUMBERLIKE,
            FN_NUMBEREQUALS,
            FN_NUMBERNOTEQUALS,
             FN_CREATETIMEUPPER,
             FN_CREATETIMELOWER,
             FN_CREATETIMEEQUALS,
             FN_CREATETIMENOTEQUALS,
             FN_MODIFYTIMEUPPER,
             FN_MODIFYTIMELOWER,
             FN_MODIFYTIMEEQUALS,
             FN_MODIFYTIMENOTEQUALS,
             FN_RECEIVETIMEUPPER,
             FN_RECEIVETIMELOWER,
             FN_RECEIVETIMEEQUALS,
             FN_RECEIVETIMENOTEQUALS,
             FN_ENDTIMEUPPER,
             FN_ENDTIMELOWER,
             FN_ENDTIMEEQUALS,
             FN_ENDTIMENOTEQUALS,
             FN_TYPELIKE,
             FN_TYPEEQUALS,
             FN_TYPENOTEQUALS,
             FN_MODALITYLIKE,
             FN_MODALITYEQUALS,
             FN_MODALITYNOTEQUALS,
             FN_FULLMONEYUPPER,
             FN_FULLMONEYLOWER,
             FN_MINUSMONEYUPPER,
             FN_MINUSMONEYLOWER,
             FN_SHOPUIDLIKE,
             FN_SHOPUIDEQUALS,
             FN_SHOPUIDNOTEQUALS,
             FN_SHOPNAMELIKE,
             FN_SHOPNAMEEQUALS,
             FN_SHOPNAMENOTEQUALS,
             FN_REMARKSLIKE,
             FN_REMARKSEQUALS,
             FN_REMARKSNOTEQUALS,
             FN_TOTALAMOUNTLIKE,
             FN_TOTALAMOUNTEQUALS,
             FN_TOTALAMOUNTNOTEQUALS,
             FN_AMOUNTLIKE,
             FN_AMOUNTEQUALS,
             FN_AMOUNTNOTEQUALS,
             FN_STATELIKE,
             FN_STATEEQUALS,
             FN_STATENOTEQUALS,
             FN_LIMITIDLIKE,
             FN_LIMITIDEQUALS,
             FN_LIMITIDNOTEQUALS,
             FN_LIMITACCOUNTLIKE,
             FN_LIMITACCOUNTEQUALS,
             FN_LIMITACCOUNTNOTEQUALS);

    private Long recordId;
    private UID couponManageUidEquals;
    private UID couponManageUidNotEquals;
    private String idLike;
    private String idEquals;
    private String idNotEquals;
    private String numberLike;
    private String numberEquals;
    private String numberNotEquals;
    private Long createTimeUpper;
    private Long createTimeLower;
    private Long createTimeEquals;
    private Long createTimeNotEquals;
    private Long modifyTimeUpper;
    private Long modifyTimeLower;
    private Long modifyTimeEquals;
    private Long modifyTimeNotEquals;
    private Long receiveTimeUpper;
    private Long receiveTimeLower;
    private Long receiveTimeEquals;
    private Long receiveTimeNotEquals;
    private Long endTimeUpper;
    private Long endTimeLower;
    private Long endTimeEquals;
    private Long endTimeNotEquals;
    private String typeLike;
    private String typeEquals;
    private String typeNotEquals;
    private String modalityLike;
    private String modalityEquals;
    private String modalityNotEquals;
    private Double fullMoneyUpper;
    private Double fullMoneyLower;
    private Double minusMoneyUpper;
    private Double minusMoneyLower;
    private String shopUidLike;
    private String shopUidEquals;
    private String shopUidNotEquals;
    private String shopNameLike;
    private String shopNameEquals;
    private String shopNameNotEquals;
    private String remarksLike;
    private String remarksEquals;
    private String remarksNotEquals;
    private String totalAmountLike;
    private String totalAmountEquals;
    private String totalAmountNotEquals;
    private String amountLike;
    private String amountEquals;
    private String amountNotEquals;
    private String stateLike;
    private String stateEquals;
    private String stateNotEquals;
    private String limitIdLike;
    private String limitIdEquals;
    private String limitIdNotEquals;
    private String limitAccountLike;
    private String limitAccountEquals;
    private String limitAccountNotEquals;

    public CouponManageListCriteria(Long recordId, UID couponManageUidEquals, UID couponManageUidNotEquals, String idLike, String idEquals, String idNotEquals, String numberLike, String numberEquals, String numberNotEquals, Long createTimeUpper, Long createTimeLower, Long createTimeEquals, Long createTimeNotEquals, Long modifyTimeUpper, Long modifyTimeLower, Long modifyTimeEquals, Long modifyTimeNotEquals, Long receiveTimeUpper, Long receiveTimeLower, Long receiveTimeEquals, Long receiveTimeNotEquals, Long endTimeUpper, Long endTimeLower, Long endTimeEquals, Long endTimeNotEquals, String typeLike, String typeEquals, String typeNotEquals, String modalityLike, String modalityEquals, String modalityNotEquals, Double fullMoneyUpper, Double fullMoneyLower, Double minusMoneyUpper, Double minusMoneyLower, String shopUidLike, String shopUidEquals, String shopUidNotEquals, String shopNameLike, String shopNameEquals, String shopNameNotEquals, String remarksLike, String remarksEquals, String remarksNotEquals, String totalAmountLike, String totalAmountEquals, String totalAmountNotEquals, String amountLike, String amountEquals, String amountNotEquals, String stateLike, String stateEquals, String stateNotEquals, String limitIdLike, String limitIdEquals, String limitIdNotEquals, String limitAccountLike, String limitAccountEquals, String limitAccountNotEquals) {
        setRecordId(recordId);
        setCouponManageUidEquals(couponManageUidEquals);
        setCouponManageUidNotEquals(couponManageUidNotEquals);
        setIdLike(idLike);
        setIdEquals(idEquals);
        setIdNotEquals(idNotEquals);
        setNumberLike(numberLike);
        setNumberEquals(numberEquals);
        setNumberNotEquals(numberNotEquals);
        setCreateTimeUpper(createTimeUpper);
        setCreateTimeLower(createTimeLower);
        setCreateTimeEquals(createTimeEquals);
        setCreateTimeNotEquals(createTimeNotEquals);
        setModifyTimeUpper(modifyTimeUpper);
        setModifyTimeLower(modifyTimeLower);
        setModifyTimeEquals(modifyTimeEquals);
        setModifyTimeNotEquals(modifyTimeNotEquals);
        setReceiveTimeUpper(receiveTimeUpper);
        setReceiveTimeLower(receiveTimeLower);
        setReceiveTimeEquals(receiveTimeEquals);
        setReceiveTimeNotEquals(receiveTimeNotEquals);
        setEndTimeUpper(endTimeUpper);
        setEndTimeLower(endTimeLower);
        setEndTimeEquals(endTimeEquals);
        setEndTimeNotEquals(endTimeNotEquals);
        setTypeLike(typeLike);
        setTypeEquals(typeEquals);
        setTypeNotEquals(typeNotEquals);
        setModalityLike(modalityLike);
        setModalityEquals(modalityEquals);
        setModalityNotEquals(modalityNotEquals);
        setFullMoneyUpper(fullMoneyUpper);
        setFullMoneyLower(fullMoneyLower);
        setMinusMoneyUpper(minusMoneyUpper);
        setMinusMoneyLower(minusMoneyLower);
        setShopUidLike(shopUidLike);
        setShopUidEquals(shopUidEquals);
        setShopUidNotEquals(shopUidNotEquals);
        setShopNameLike(shopNameLike);
        setShopNameEquals(shopNameEquals);
        setShopNameNotEquals(shopNameNotEquals);
        setRemarksLike(remarksLike);
        setRemarksEquals(remarksEquals);
        setRemarksNotEquals(remarksNotEquals);
        setTotalAmountLike(totalAmountLike);
        setTotalAmountEquals(totalAmountEquals);
        setTotalAmountNotEquals(totalAmountNotEquals);
        setAmountLike(amountLike);
        setAmountEquals(amountEquals);
        setAmountNotEquals(amountNotEquals);
        setStateLike(stateLike);
        setStateEquals(stateEquals);
        setStateNotEquals(stateNotEquals);
        setLimitIdLike(limitIdLike);
        setLimitIdEquals(limitIdEquals);
        setLimitIdNotEquals(limitIdNotEquals);
        setLimitAccountLike(limitAccountLike);
        setLimitAccountEquals(limitAccountEquals);
        setLimitAccountNotEquals(limitAccountNotEquals);
    }

    public CouponManageListCriteria() {
    }

    public CouponManageListCriteria duplicate() {
        CouponManageListCriteria result = new CouponManageListCriteria();
        result.recordId = this.recordId;
        result.couponManageUidEquals = this.couponManageUidEquals;
        result.couponManageUidNotEquals = this.couponManageUidNotEquals;
        result.idLike = this.idLike;
        result.idEquals = this.idEquals;
        result.idNotEquals = this.idNotEquals;
        result.numberLike = this.numberLike;
        result.numberEquals = this.numberEquals;
        result.numberNotEquals = this.numberNotEquals;
        result.createTimeUpper = this.createTimeUpper;
        result.createTimeLower = this.createTimeLower;
        result.createTimeEquals = this.createTimeEquals;
        result.createTimeNotEquals = this.createTimeNotEquals;
        result.modifyTimeUpper = this.modifyTimeUpper;
        result.modifyTimeLower = this.modifyTimeLower;
        result.modifyTimeEquals = this.modifyTimeEquals;
        result.modifyTimeNotEquals = this.modifyTimeNotEquals;
        result.receiveTimeUpper = this.receiveTimeUpper;
        result.receiveTimeLower = this.receiveTimeLower;
        result.receiveTimeEquals = this.receiveTimeEquals;
        result.receiveTimeNotEquals = this.receiveTimeNotEquals;
        result.endTimeUpper = this.endTimeUpper;
        result.endTimeLower = this.endTimeLower;
        result.endTimeEquals = this.endTimeEquals;
        result.endTimeNotEquals = this.endTimeNotEquals;
        result.typeLike = this.typeLike;
        result.typeEquals = this.typeEquals;
        result.typeNotEquals = this.typeNotEquals;
        result.modalityLike = this.modalityLike;
        result.modalityEquals = this.modalityEquals;
        result.modalityNotEquals = this.modalityNotEquals;
        result.fullMoneyUpper = this.fullMoneyUpper;
        result.fullMoneyLower = this.fullMoneyLower;
        result.minusMoneyUpper = this.minusMoneyUpper;
        result.minusMoneyLower = this.minusMoneyLower;
        result.shopUidLike = this.shopUidLike;
        result.shopUidEquals = this.shopUidEquals;
        result.shopUidNotEquals = this.shopUidNotEquals;
        result.shopNameLike = this.shopNameLike;
        result.shopNameEquals = this.shopNameEquals;
        result.shopNameNotEquals = this.shopNameNotEquals;
        result.remarksLike = this.remarksLike;
        result.remarksEquals = this.remarksEquals;
        result.remarksNotEquals = this.remarksNotEquals;
        result.totalAmountLike = this.totalAmountLike;
        result.totalAmountEquals = this.totalAmountEquals;
        result.totalAmountNotEquals = this.totalAmountNotEquals;
        result.amountLike = this.amountLike;
        result.amountEquals = this.amountEquals;
        result.amountNotEquals = this.amountNotEquals;
        result.stateLike = this.stateLike;
        result.stateEquals = this.stateEquals;
        result.stateNotEquals = this.stateNotEquals;
        result.limitIdLike = this.limitIdLike;
        result.limitIdEquals = this.limitIdEquals;
        result.limitIdNotEquals = this.limitIdNotEquals;
        result.limitAccountLike = this.limitAccountLike;
        result.limitAccountEquals = this.limitAccountEquals;
        result.limitAccountNotEquals = this.limitAccountNotEquals;
        return result;
    }

    @Override
    public String toString() {
        return Convert.toJson(this);
    }

    public Long getRecordId() {
        return recordId;
    }

    public void  setRecordId(Long value) {
        this.recordId = value;
    }

    public CouponManageListCriteria withRecordId(Long value) {
        setRecordId(value);
        return this;
    }

    public CouponManageListCriteria withRecordId(Long value, Long defaultValue) {
        setRecordId(value == null ? defaultValue : value);
        return this;
    }

    public UID getCouponManageUidEquals() {
        return couponManageUidEquals;
    }

    public void  setCouponManageUidEquals(UID value) {
        this.couponManageUidEquals = value;
    }

    public CouponManageListCriteria withCouponManageUidEquals(UID value) {
        setCouponManageUidEquals(value);
        return this;
    }

    public CouponManageListCriteria withCouponManageUidEquals(UID value, UID defaultValue) {
        setCouponManageUidEquals(value == null ? defaultValue : value);
        return this;
    }

    public UID getCouponManageUidNotEquals() {
        return couponManageUidNotEquals;
    }

    public void  setCouponManageUidNotEquals(UID value) {
        this.couponManageUidNotEquals = value;
    }

    public CouponManageListCriteria withCouponManageUidNotEquals(UID value) {
        setCouponManageUidNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withCouponManageUidNotEquals(UID value, UID defaultValue) {
        setCouponManageUidNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getIdLike() {
        return idLike;
    }

    public void  setIdLike(String value) {
        this.idLike = value;
    }

    public CouponManageListCriteria withIdLike(String value) {
        setIdLike(value);
        return this;
    }

    public CouponManageListCriteria withIdLike(String value, String defaultValue) {
        setIdLike(value == null ? defaultValue : value);
        return this;
    }

    public String getIdEquals() {
        return idEquals;
    }

    public void  setIdEquals(String value) {
        this.idEquals = value;
    }

    public CouponManageListCriteria withIdEquals(String value) {
        setIdEquals(value);
        return this;
    }

    public CouponManageListCriteria withIdEquals(String value, String defaultValue) {
        setIdEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getIdNotEquals() {
        return idNotEquals;
    }

    public void  setIdNotEquals(String value) {
        this.idNotEquals = value;
    }

    public CouponManageListCriteria withIdNotEquals(String value) {
        setIdNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withIdNotEquals(String value, String defaultValue) {
        setIdNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getNumberLike() {
        return numberLike;
    }

    public void setNumberLike(String value) {
        this.numberLike = value;
    }

    public CouponManageListCriteria withNumberLike(String value) {
        setNumberLike(value);
        return this;
    }

    public CouponManageListCriteria withNumberLike(String value, String defaultValue) {
        setNumberLike(value == null ? defaultValue : value);
        return this;
    }

    public String getNumberEquals() {
        return numberEquals;
    }

    public void setNumberEquals(String value) {
        this.numberEquals = value;
    }

    public CouponManageListCriteria withNumberEquals(String value) {
        setNumberEquals(value);
        return this;
    }

    public CouponManageListCriteria withNumberEquals(String value, String defaultValue) {
        setNumberEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getNumberNotEquals() {
        return numberNotEquals;
    }

    public void setNumberNotEquals(String value) {
        this.numberNotEquals = value;
    }

    public CouponManageListCriteria withNumberNotEquals(String value) {
        setNumberNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withNumberNotEquals(String value, String defaultValue) {
        setNumberNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getCreateTimeUpper() {
        return createTimeUpper;
    }

    public void  setCreateTimeUpper(Long value) {
        this.createTimeUpper = value;
    }

    public CouponManageListCriteria withCreateTimeUpper(Long value) {
        setCreateTimeUpper(value);
        return this;
    }

    public CouponManageListCriteria withCreateTimeUpper(Long value, Long defaultValue) {
        setCreateTimeUpper(value == null ? defaultValue : value);
        return this;
    }

    public Long getCreateTimeLower() {
        return createTimeLower;
    }

    public void  setCreateTimeLower(Long value) {
        this.createTimeLower = value;
    }

    public CouponManageListCriteria withCreateTimeLower(Long value) {
        setCreateTimeLower(value);
        return this;
    }

    public CouponManageListCriteria withCreateTimeLower(Long value, Long defaultValue) {
        setCreateTimeLower(value == null ? defaultValue : value);
        return this;
    }

    public Long getCreateTimeEquals() {
        return createTimeEquals;
    }

    public void  setCreateTimeEquals(Long value) {
        this.createTimeEquals = value;
    }

    public CouponManageListCriteria withCreateTimeEquals(Long value) {
        setCreateTimeEquals(value);
        return this;
    }

    public CouponManageListCriteria withCreateTimeEquals(Long value, Long defaultValue) {
        setCreateTimeEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getCreateTimeNotEquals() {
        return createTimeNotEquals;
    }

    public void  setCreateTimeNotEquals(Long value) {
        this.createTimeNotEquals = value;
    }

    public CouponManageListCriteria withCreateTimeNotEquals(Long value) {
        setCreateTimeNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withCreateTimeNotEquals(Long value, Long defaultValue) {
        setCreateTimeNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getModifyTimeUpper() {
        return modifyTimeUpper;
    }

    public void  setModifyTimeUpper(Long value) {
        this.modifyTimeUpper = value;
    }

    public CouponManageListCriteria withModifyTimeUpper(Long value) {
        setModifyTimeUpper(value);
        return this;
    }

    public CouponManageListCriteria withModifyTimeUpper(Long value, Long defaultValue) {
        setModifyTimeUpper(value == null ? defaultValue : value);
        return this;
    }

    public Long getModifyTimeLower() {
        return modifyTimeLower;
    }

    public void  setModifyTimeLower(Long value) {
        this.modifyTimeLower = value;
    }

    public CouponManageListCriteria withModifyTimeLower(Long value) {
        setModifyTimeLower(value);
        return this;
    }

    public CouponManageListCriteria withModifyTimeLower(Long value, Long defaultValue) {
        setModifyTimeLower(value == null ? defaultValue : value);
        return this;
    }

    public Long getModifyTimeEquals() {
        return modifyTimeEquals;
    }

    public void  setModifyTimeEquals(Long value) {
        this.modifyTimeEquals = value;
    }

    public CouponManageListCriteria withModifyTimeEquals(Long value) {
        setModifyTimeEquals(value);
        return this;
    }

    public CouponManageListCriteria withModifyTimeEquals(Long value, Long defaultValue) {
        setModifyTimeEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getModifyTimeNotEquals() {
        return modifyTimeNotEquals;
    }

    public void  setModifyTimeNotEquals(Long value) {
        this.modifyTimeNotEquals = value;
    }

    public CouponManageListCriteria withModifyTimeNotEquals(Long value) {
        setModifyTimeNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withModifyTimeNotEquals(Long value, Long defaultValue) {
        setModifyTimeNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getReceiveTimeUpper() {
        return receiveTimeUpper;
    }

    public void  setReceiveTimeUpper(Long value) {
        this.receiveTimeUpper = value;
    }

    public CouponManageListCriteria withReceiveTimeUpper(Long value) {
        setReceiveTimeUpper(value);
        return this;
    }

    public CouponManageListCriteria withReceiveTimeUpper(Long value, Long defaultValue) {
        setReceiveTimeUpper(value == null ? defaultValue : value);
        return this;
    }

    public Long getReceiveTimeLower() {
        return receiveTimeLower;
    }

    public void  setReceiveTimeLower(Long value) {
        this.receiveTimeLower = value;
    }

    public CouponManageListCriteria withReceiveTimeLower(Long value) {
        setReceiveTimeLower(value);
        return this;
    }

    public CouponManageListCriteria withReceiveTimeLower(Long value, Long defaultValue) {
        setReceiveTimeLower(value == null ? defaultValue : value);
        return this;
    }

    public Long getReceiveTimeEquals() {
        return receiveTimeEquals;
    }

    public void  setReceiveTimeEquals(Long value) {
        this.receiveTimeEquals = value;
    }

    public CouponManageListCriteria withReceiveTimeEquals(Long value) {
        setReceiveTimeEquals(value);
        return this;
    }

    public CouponManageListCriteria withReceiveTimeEquals(Long value, Long defaultValue) {
        setReceiveTimeEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getReceiveTimeNotEquals() {
        return receiveTimeNotEquals;
    }

    public void  setReceiveTimeNotEquals(Long value) {
        this.receiveTimeNotEquals = value;
    }

    public CouponManageListCriteria withReceiveTimeNotEquals(Long value) {
        setReceiveTimeNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withReceiveTimeNotEquals(Long value, Long defaultValue) {
        setReceiveTimeNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getEndTimeUpper() {
        return endTimeUpper;
    }

    public void  setEndTimeUpper(Long value) {
        this.endTimeUpper = value;
    }

    public CouponManageListCriteria withEndTimeUpper(Long value) {
        setEndTimeUpper(value);
        return this;
    }

    public CouponManageListCriteria withEndTimeUpper(Long value, Long defaultValue) {
        setEndTimeUpper(value == null ? defaultValue : value);
        return this;
    }

    public Long getEndTimeLower() {
        return endTimeLower;
    }

    public void  setEndTimeLower(Long value) {
        this.endTimeLower = value;
    }

    public CouponManageListCriteria withEndTimeLower(Long value) {
        setEndTimeLower(value);
        return this;
    }

    public CouponManageListCriteria withEndTimeLower(Long value, Long defaultValue) {
        setEndTimeLower(value == null ? defaultValue : value);
        return this;
    }

    public Long getEndTimeEquals() {
        return endTimeEquals;
    }

    public void  setEndTimeEquals(Long value) {
        this.endTimeEquals = value;
    }

    public CouponManageListCriteria withEndTimeEquals(Long value) {
        setEndTimeEquals(value);
        return this;
    }

    public CouponManageListCriteria withEndTimeEquals(Long value, Long defaultValue) {
        setEndTimeEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getEndTimeNotEquals() {
        return endTimeNotEquals;
    }

    public void  setEndTimeNotEquals(Long value) {
        this.endTimeNotEquals = value;
    }

    public CouponManageListCriteria withEndTimeNotEquals(Long value) {
        setEndTimeNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withEndTimeNotEquals(Long value, Long defaultValue) {
        setEndTimeNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getTypeLike() {
        return typeLike;
    }

    public void  setTypeLike(String value) {
        this.typeLike = value;
    }

    public CouponManageListCriteria withTypeLike(String value) {
        setTypeLike(value);
        return this;
    }

    public CouponManageListCriteria withTypeLike(String value, String defaultValue) {
        setTypeLike(value == null ? defaultValue : value);
        return this;
    }

    public String getTypeEquals() {
        return typeEquals;
    }

    public void  setTypeEquals(String value) {
        this.typeEquals = value;
    }

    public CouponManageListCriteria withTypeEquals(String value) {
        setTypeEquals(value);
        return this;
    }

    public CouponManageListCriteria withTypeEquals(String value, String defaultValue) {
        setTypeEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getTypeNotEquals() {
        return typeNotEquals;
    }

    public void  setTypeNotEquals(String value) {
        this.typeNotEquals = value;
    }

    public CouponManageListCriteria withTypeNotEquals(String value) {
        setTypeNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withTypeNotEquals(String value, String defaultValue) {
        setTypeNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getModalityLike() {
        return modalityLike;
    }

    public void  setModalityLike(String value) {
        this.modalityLike = value;
    }

    public CouponManageListCriteria withModalityLike(String value) {
        setModalityLike(value);
        return this;
    }

    public CouponManageListCriteria withModalityLike(String value, String defaultValue) {
        setModalityLike(value == null ? defaultValue : value);
        return this;
    }

    public String getModalityEquals() {
        return modalityEquals;
    }

    public void  setModalityEquals(String value) {
        this.modalityEquals = value;
    }

    public CouponManageListCriteria withModalityEquals(String value) {
        setModalityEquals(value);
        return this;
    }

    public CouponManageListCriteria withModalityEquals(String value, String defaultValue) {
        setModalityEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getModalityNotEquals() {
        return modalityNotEquals;
    }

    public void  setModalityNotEquals(String value) {
        this.modalityNotEquals = value;
    }

    public CouponManageListCriteria withModalityNotEquals(String value) {
        setModalityNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withModalityNotEquals(String value, String defaultValue) {
        setModalityNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public Double getFullMoneyUpper() {
        return fullMoneyUpper;
    }

    public void  setFullMoneyUpper(Double value) {
        this.fullMoneyUpper = value;
    }

    public CouponManageListCriteria withFullMoneyUpper(Double value) {
        setFullMoneyUpper(value);
        return this;
    }

    public CouponManageListCriteria withFullMoneyUpper(Double value, Double defaultValue) {
        setFullMoneyUpper(value == null ? defaultValue : value);
        return this;
    }

    public Double getFullMoneyLower() {
        return fullMoneyLower;
    }

    public void  setFullMoneyLower(Double value) {
        this.fullMoneyLower = value;
    }

    public CouponManageListCriteria withFullMoneyLower(Double value) {
        setFullMoneyLower(value);
        return this;
    }

    public CouponManageListCriteria withFullMoneyLower(Double value, Double defaultValue) {
        setFullMoneyLower(value == null ? defaultValue : value);
        return this;
    }

    public Double getMinusMoneyUpper() {
        return minusMoneyUpper;
    }

    public void  setMinusMoneyUpper(Double value) {
        this.minusMoneyUpper = value;
    }

    public CouponManageListCriteria withMinusMoneyUpper(Double value) {
        setMinusMoneyUpper(value);
        return this;
    }

    public CouponManageListCriteria withMinusMoneyUpper(Double value, Double defaultValue) {
        setMinusMoneyUpper(value == null ? defaultValue : value);
        return this;
    }

    public Double getMinusMoneyLower() {
        return minusMoneyLower;
    }

    public void  setMinusMoneyLower(Double value) {
        this.minusMoneyLower = value;
    }

    public CouponManageListCriteria withMinusMoneyLower(Double value) {
        setMinusMoneyLower(value);
        return this;
    }

    public CouponManageListCriteria withMinusMoneyLower(Double value, Double defaultValue) {
        setMinusMoneyLower(value == null ? defaultValue : value);
        return this;
    }

    public String getShopUidLike() {
        return shopUidLike;
    }

    public void  setShopUidLike(String value) {
        this.shopUidLike = value;
    }

    public CouponManageListCriteria withShopUidLike(String value) {
        setShopUidLike(value);
        return this;
    }

    public CouponManageListCriteria withShopUidLike(String value, String defaultValue) {
        setShopUidLike(value == null ? defaultValue : value);
        return this;
    }

    public String getShopUidEquals() {
        return shopUidEquals;
    }

    public void  setShopUidEquals(String value) {
        this.shopUidEquals = value;
    }

    public CouponManageListCriteria withShopUidEquals(String value) {
        setShopUidEquals(value);
        return this;
    }

    public CouponManageListCriteria withShopUidEquals(String value, String defaultValue) {
        setShopUidEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getShopUidNotEquals() {
        return shopUidNotEquals;
    }

    public void  setShopUidNotEquals(String value) {
        this.shopUidNotEquals = value;
    }

    public CouponManageListCriteria withShopUidNotEquals(String value) {
        setShopUidNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withShopUidNotEquals(String value, String defaultValue) {
        setShopUidNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getShopNameLike() {
        return shopNameLike;
    }

    public void  setShopNameLike(String value) {
        this.shopNameLike = value;
    }

    public CouponManageListCriteria withShopNameLike(String value) {
        setShopNameLike(value);
        return this;
    }

    public CouponManageListCriteria withShopNameLike(String value, String defaultValue) {
        setShopNameLike(value == null ? defaultValue : value);
        return this;
    }

    public String getShopNameEquals() {
        return shopNameEquals;
    }

    public void  setShopNameEquals(String value) {
        this.shopNameEquals = value;
    }

    public CouponManageListCriteria withShopNameEquals(String value) {
        setShopNameEquals(value);
        return this;
    }

    public CouponManageListCriteria withShopNameEquals(String value, String defaultValue) {
        setShopNameEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getShopNameNotEquals() {
        return shopNameNotEquals;
    }

    public void  setShopNameNotEquals(String value) {
        this.shopNameNotEquals = value;
    }

    public CouponManageListCriteria withShopNameNotEquals(String value) {
        setShopNameNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withShopNameNotEquals(String value, String defaultValue) {
        setShopNameNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getRemarksLike() {
        return remarksLike;
    }

    public void  setRemarksLike(String value) {
        this.remarksLike = value;
    }

    public CouponManageListCriteria withRemarksLike(String value) {
        setRemarksLike(value);
        return this;
    }

    public CouponManageListCriteria withRemarksLike(String value, String defaultValue) {
        setRemarksLike(value == null ? defaultValue : value);
        return this;
    }

    public String getRemarksEquals() {
        return remarksEquals;
    }

    public void  setRemarksEquals(String value) {
        this.remarksEquals = value;
    }

    public CouponManageListCriteria withRemarksEquals(String value) {
        setRemarksEquals(value);
        return this;
    }

    public CouponManageListCriteria withRemarksEquals(String value, String defaultValue) {
        setRemarksEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getRemarksNotEquals() {
        return remarksNotEquals;
    }

    public void  setRemarksNotEquals(String value) {
        this.remarksNotEquals = value;
    }

    public CouponManageListCriteria withRemarksNotEquals(String value) {
        setRemarksNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withRemarksNotEquals(String value, String defaultValue) {
        setRemarksNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getTotalAmountLike() {
        return totalAmountLike;
    }

    public void  setTotalAmountLike(String value) {
        this.totalAmountLike = value;
    }

    public CouponManageListCriteria withTotalAmountLike(String value) {
        setTotalAmountLike(value);
        return this;
    }

    public CouponManageListCriteria withTotalAmountLike(String value, String defaultValue) {
        setTotalAmountLike(value == null ? defaultValue : value);
        return this;
    }

    public String getTotalAmountEquals() {
        return totalAmountEquals;
    }

    public void  setTotalAmountEquals(String value) {
        this.totalAmountEquals = value;
    }

    public CouponManageListCriteria withTotalAmountEquals(String value) {
        setTotalAmountEquals(value);
        return this;
    }

    public CouponManageListCriteria withTotalAmountEquals(String value, String defaultValue) {
        setTotalAmountEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getTotalAmountNotEquals() {
        return totalAmountNotEquals;
    }

    public void  setTotalAmountNotEquals(String value) {
        this.totalAmountNotEquals = value;
    }

    public CouponManageListCriteria withTotalAmountNotEquals(String value) {
        setTotalAmountNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withTotalAmountNotEquals(String value, String defaultValue) {
        setTotalAmountNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getAmountLike() {
        return amountLike;
    }

    public void  setAmountLike(String value) {
        this.amountLike = value;
    }

    public CouponManageListCriteria withAmountLike(String value) {
        setAmountLike(value);
        return this;
    }

    public CouponManageListCriteria withAmountLike(String value, String defaultValue) {
        setAmountLike(value == null ? defaultValue : value);
        return this;
    }

    public String getAmountEquals() {
        return amountEquals;
    }

    public void  setAmountEquals(String value) {
        this.amountEquals = value;
    }

    public CouponManageListCriteria withAmountEquals(String value) {
        setAmountEquals(value);
        return this;
    }

    public CouponManageListCriteria withAmountEquals(String value, String defaultValue) {
        setAmountEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getAmountNotEquals() {
        return amountNotEquals;
    }

    public void  setAmountNotEquals(String value) {
        this.amountNotEquals = value;
    }

    public CouponManageListCriteria withAmountNotEquals(String value) {
        setAmountNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withAmountNotEquals(String value, String defaultValue) {
        setAmountNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getStateLike() {
        return stateLike;
    }

    public void  setStateLike(String value) {
        this.stateLike = value;
    }

    public CouponManageListCriteria withStateLike(String value) {
        setStateLike(value);
        return this;
    }

    public CouponManageListCriteria withStateLike(String value, String defaultValue) {
        setStateLike(value == null ? defaultValue : value);
        return this;
    }

    public String getStateEquals() {
        return stateEquals;
    }

    public void  setStateEquals(String value) {
        this.stateEquals = value;
    }

    public CouponManageListCriteria withStateEquals(String value) {
        setStateEquals(value);
        return this;
    }

    public CouponManageListCriteria withStateEquals(String value, String defaultValue) {
        setStateEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getStateNotEquals() {
        return stateNotEquals;
    }

    public void  setStateNotEquals(String value) {
        this.stateNotEquals = value;
    }

    public CouponManageListCriteria withStateNotEquals(String value) {
        setStateNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withStateNotEquals(String value, String defaultValue) {
        setStateNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getLimitIdLike() {
        return limitIdLike;
    }

    public void  setLimitIdLike(String value) {
        this.limitIdLike = value;
    }

    public CouponManageListCriteria withLimitIdLike(String value) {
        setLimitIdLike(value);
        return this;
    }

    public CouponManageListCriteria withLimitIdLike(String value, String defaultValue) {
        setLimitIdLike(value == null ? defaultValue : value);
        return this;
    }

    public String getLimitIdEquals() {
        return limitIdEquals;
    }

    public void  setLimitIdEquals(String value) {
        this.limitIdEquals = value;
    }

    public CouponManageListCriteria withLimitIdEquals(String value) {
        setLimitIdEquals(value);
        return this;
    }

    public CouponManageListCriteria withLimitIdEquals(String value, String defaultValue) {
        setLimitIdEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getLimitIdNotEquals() {
        return limitIdNotEquals;
    }

    public void  setLimitIdNotEquals(String value) {
        this.limitIdNotEquals = value;
    }

    public CouponManageListCriteria withLimitIdNotEquals(String value) {
        setLimitIdNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withLimitIdNotEquals(String value, String defaultValue) {
        setLimitIdNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getLimitAccountLike() {
        return limitAccountLike;
    }

    public void  setLimitAccountLike(String value) {
        this.limitAccountLike = value;
    }

    public CouponManageListCriteria withLimitAccountLike(String value) {
        setLimitAccountLike(value);
        return this;
    }

    public CouponManageListCriteria withLimitAccountLike(String value, String defaultValue) {
        setLimitAccountLike(value == null ? defaultValue : value);
        return this;
    }

    public String getLimitAccountEquals() {
        return limitAccountEquals;
    }

    public void  setLimitAccountEquals(String value) {
        this.limitAccountEquals = value;
    }

    public CouponManageListCriteria withLimitAccountEquals(String value) {
        setLimitAccountEquals(value);
        return this;
    }

    public CouponManageListCriteria withLimitAccountEquals(String value, String defaultValue) {
        setLimitAccountEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getLimitAccountNotEquals() {
        return limitAccountNotEquals;
    }

    public void  setLimitAccountNotEquals(String value) {
        this.limitAccountNotEquals = value;
    }

    public CouponManageListCriteria withLimitAccountNotEquals(String value) {
        setLimitAccountNotEquals(value);
        return this;
    }

    public CouponManageListCriteria withLimitAccountNotEquals(String value, String defaultValue) {
        setLimitAccountNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public Object getValueOf(String name) {
        switch(name) {
        case "recordId": return getRecordId();
        case "couponManageUidEquals": return getCouponManageUidEquals();
        case "couponManageUidNotEquals": return getCouponManageUidNotEquals();
        case "idLike": return getIdLike();
        case "idEquals": return getIdEquals();
        case "idNotEquals": return getIdNotEquals();
            case "numberLike":
                return getNumberLike();
            case "numberEquals":
                return getNumberEquals();
            case "numberNotEquals":
                return getNumberNotEquals();
        case "createTimeUpper": return getCreateTimeUpper();
        case "createTimeLower": return getCreateTimeLower();
        case "createTimeEquals": return getCreateTimeEquals();
        case "createTimeNotEquals": return getCreateTimeNotEquals();
        case "modifyTimeUpper": return getModifyTimeUpper();
        case "modifyTimeLower": return getModifyTimeLower();
        case "modifyTimeEquals": return getModifyTimeEquals();
        case "modifyTimeNotEquals": return getModifyTimeNotEquals();
        case "receiveTimeUpper": return getReceiveTimeUpper();
        case "receiveTimeLower": return getReceiveTimeLower();
        case "receiveTimeEquals": return getReceiveTimeEquals();
        case "receiveTimeNotEquals": return getReceiveTimeNotEquals();
        case "endTimeUpper": return getEndTimeUpper();
        case "endTimeLower": return getEndTimeLower();
        case "endTimeEquals": return getEndTimeEquals();
        case "endTimeNotEquals": return getEndTimeNotEquals();
        case "typeLike": return getTypeLike();
        case "typeEquals": return getTypeEquals();
        case "typeNotEquals": return getTypeNotEquals();
        case "modalityLike": return getModalityLike();
        case "modalityEquals": return getModalityEquals();
        case "modalityNotEquals": return getModalityNotEquals();
        case "fullMoneyUpper": return getFullMoneyUpper();
        case "fullMoneyLower": return getFullMoneyLower();
        case "minusMoneyUpper": return getMinusMoneyUpper();
        case "minusMoneyLower": return getMinusMoneyLower();
        case "shopUidLike": return getShopUidLike();
        case "shopUidEquals": return getShopUidEquals();
        case "shopUidNotEquals": return getShopUidNotEquals();
        case "shopNameLike": return getShopNameLike();
        case "shopNameEquals": return getShopNameEquals();
        case "shopNameNotEquals": return getShopNameNotEquals();
        case "remarksLike": return getRemarksLike();
        case "remarksEquals": return getRemarksEquals();
        case "remarksNotEquals": return getRemarksNotEquals();
        case "totalAmountLike": return getTotalAmountLike();
        case "totalAmountEquals": return getTotalAmountEquals();
        case "totalAmountNotEquals": return getTotalAmountNotEquals();
        case "amountLike": return getAmountLike();
        case "amountEquals": return getAmountEquals();
        case "amountNotEquals": return getAmountNotEquals();
        case "stateLike": return getStateLike();
        case "stateEquals": return getStateEquals();
        case "stateNotEquals": return getStateNotEquals();
        case "limitIdLike": return getLimitIdLike();
        case "limitIdEquals": return getLimitIdEquals();
        case "limitIdNotEquals": return getLimitIdNotEquals();
        case "limitAccountLike": return getLimitAccountLike();
        case "limitAccountEquals": return getLimitAccountEquals();
        case "limitAccountNotEquals": return getLimitAccountNotEquals();
        }
        return null;
    }

    public boolean hasField(String name) {
        return FIELD_NAMES.contains(name);
    }

    @Override
    public int hashCode() {
        return signature().hashCode();
    }

    @Override
    public boolean equals(Object o) {
        if(!(o instanceof CouponManageListCriteria)) return false;
        return signature().equals(((CouponManageListCriteria)o).signature());
    }

    public String signature() {
        throw new RuntimeException("Bean CouponManageListCriteria has no signature defined, no hash code or equals possible.");
    }
}
